package router

import (
	"background/model/back/repo"
	"background/model/back/srv"
	"background/utilx/ginx"
	"github.com/google/wire"
)

func NewChildRouter(
	cloudOrder CloudOrder,
	cloudUser CloudUser,
	cloudPlan CloudPlan,
	cloudLogTraffic CloudLogTraffic,
	cloudNotice CloudNotice,
	cloudServer CloudServer,
	cloudPayment CloudPayment,
	cloudKnowledge CloudKnowledge,
) ginx.RouterInits {
	return []ginx.IRouterInit{
		cloudOrder,
		cloudUser,
		cloudPlan,
		cloudLogTraffic,
		cloudNotice,
		cloudPayment,
		cloudServer,
		cloudKnowledge,
	}
}

var Provider = wire.NewSet(
	repo.NewCloudRepo,
	srv.NewCloudOrder,
	srv.NewCloudUser,
	srv.NewCloudPlan,
	srv.NewCloudLogTraffic,
	srv.NewCloudPayment,
	srv.NewCloudNotice,
	srv.NewCloudServer,
	srv.NewCloudKnowledge,

	NewCloudOrder,
	NewCloudUser,
	NewCloudPlan,
	NewCloudNotice,
	NewCloudLogTraffic,
	NewCloudServer,
	NewCloudPayment,
	NewCloudKnowledge,
	//=========
	NewChildRouter,
)
